#include <iostream>
#include "aed2.h"
#include <string>

using namespace std;

int main()
{
	Conj<Tag> a;
	a.Agregar("#haciendoTp");
	Fecha f1(10,9);
	Fecha f2(10,8);
	Fecha f3(10,10);
	Fecha f4(10,11);
	Mensaje* m1 = new Mensaje("Jorge", "Sos un hijo de re mil puta", f1, a);
	Mensaje* m2 = new Mensaje("Martin", "HOLAAAAAAAA", f2, a);
	Mensaje* m3 = new Mensaje("Ramon", "CHAUUUUUU", f3, a);
	Mensaje* m4 = new Mensaje("Ramiro", "Pelotudo!!", f4, a);

	Lista<Mensaje*> l1;
	l1.AgregarAdelante(m1);
	l1.AgregarAdelante(m3);

	ItUniLista<Mensaje*> it(l1);
    //cout << (it.actual())->usuario << endl;

	Lista<Mensaje*> l2;
	l2.AgregarAdelante(m2);
	l2.AgregarAdelante(m4);

	ListaOrd lo1(l1);
	ListaOrd lo2(l2);
	lo1.insertarVarios(lo2);
	//lo1.insertar(m1);
	ListaOrd::ItListaOrd it1;
	it1 = lo1.CrearItListaOrd();

	cout << (it1.Actual())->usuario <<endl;
	it1.Avanzar();
	cout << (it1.Actual())->usuario <<endl;
	it1.Avanzar();
	cout << (it1.Actual())->usuario <<endl;
	it1.Avanzar();
	cout << (it1.Actual())->usuario <<endl;
	
	delete m1;
	delete m2;
	delete m3;
	delete m4;



	//ListaOrd lo2(l2);
	//ItUniLista<Mensaje*> it(l1);
	//it.avanzar();
	//ListaOrd::ItListaOrd it2;
	//it2 = lo1.CrearItListaOrd();
	//cout << (*it2.Actual()).usuario <<endl;
	//it2.Avanzar();
	//cout << (*it2.Actual()).usuario <<endl;
	//it2.Avanzar();
	//cout << (*it2.Actual()).usuario <<endl;
	//it2.Avanzar();
	//cout << (*it2.Actual()).usuario <<endl;



	//cout << m1.usuario <<endl;
	//cout << (*it.actual()).usuario <<endl;
	/*
	cout << a.menor(b) <<endl;
	cout << a.mismaSemana(b) <<endl;
	cout << a.diaSemana() <<endl;
	cout << b.diaSemana() <<endl;
	*/
    return 0;
}
